package igin

type Conf struct {
	Name        string `json:"name,default=ymsHttp"`        //服务名
	Addr        string `json:"addr,default=127.0.0.1:8080"` //服务地址
	QuitTimeout int    `json:"quitTimeout,default=10"`      //退出超时时间
	Mode        string `json:"mode,default=debug"`
	HttpConf
}

type HttpConf struct {
	DisableGeneralOptionsHandler bool   `json:"disableGeneralOptionsHandler,default=false"` //禁用了默认的 OPTIONS 请求处理
	ReadHeaderTimeout            int    `json:"readHeaderTimeout,default=2"`                //设置请求头读取超时时间(2-5 秒)
	ReadTimeout                  int    `json:"readTimeout,default=5"`                      //设置完整请求读取超时时间(5-10 秒)
	WriteTimeout                 int    `json:"writeTimeout,default=10"`                    //设置限制响应写入时间(10-30 秒)
	IdleTimeout                  int    `json:"idleTimeout,default=30"`                     //释放空闲连接以节省资源(30-60 秒)
	MaxHeaderBytes               int    `json:"maxHeaderBytes,default=0"`                   //释放空闲连接以节省资源
	Tls                          bool   `json:"tls,default=false"`                          //开启tls
	TlsCert                      string `json:"tlsCert,optional"`
	TlsKey                       string `json:"tlsKey,optional"`
}
